<h1><code ng:non-bindable=""></code>
    <span class="hint"></span>
</h1>
<div><a href="http://github.com/angular/angular.js/edit/master/docs/content/guide/dev_guide.mvc.ngdoc"
        class="improve-docs btn btn-primary">Improve this doc</a>

    <div class="developer-guide-page developer-guide-about-mvc-in-angular-page"><p>While Model-View-Controller (MVC) has
        acquired different shades of meaning over the years since it
        first appeared, Angular incorporates the basic principles behind the original <a
                href="http://en.wikipedia.org/wiki/Model–view–controller">MVC</a> software design pattern into its way
        of
        building client-side web applications.</p>

        <p>The MVC pattern summarized:</p>

        <ul>
            <li>Separate applications into distinct presentation, data, and logic components</li>
            <li>Encourage loose coupling between these components</li>
        </ul>

        <p>Along with <a href="guide/dev_guide.services">services</a> and <a href="guide/di">dependency injection</a>,
            MVC
            makes angular applications better structured, easier to maintain and more testable.</p>

        <p>The following topics explain how angular incorporates the MVC pattern into the angular way of
            developing web applications:</p>

        <ul>
            <li><a href="guide/dev_guide.mvc.understanding_model">Understanding the Model Component</a></li>
            <li><a href="guide/dev_guide.mvc.understanding_controller">Understanding the Controller Component</a></li>
            <li><a href="guide/dev_guide.mvc.understanding_view">Understanding the View Component</a></li>
        </ul>
    </div>
</div>
